Magnetic storage systems, such as hard disk drives (HDDs), are used as mass storage in a wide variety of devices, including but not limited to personal computers, digital versatile disc (DVD) players, high definition television (HDTV) receivers, vehicle control systems, cellular or mobile telephones, television set top boxes, and portable media players. As these magnetic storage systems become smaller and/or attain higher data storage capacities, the density of data on the magnetic storage medium becomes higher.
A typical HDD includes magnetic storage media of one or more flat disks, called platters (sometimes also “disks” or “discs”). The platters are generally formed of two main substances: a substrate material that gives it structure and rigidity, and a magnetic media coating which holds the magnetic impulses (or moments) that represent data. A typical HDD further includes a read/write head, generally a magnetic transducer which can sense and/or change the magnetic fields stored on the platters. The read/write head is attached to a slider, generally an armature capable of placing the read/write head at a desired location over the platter.
Modern HDDs also include a variety of circuits for controlling the drive hardware, processing the signals read from and/or written to the disks, processing input and/or output from the drive, etc. A drive may have one or more integrated circuit devices or other devices to handle one or more of these operations. In many cases, a single HDD component such as a standardized and/or reusable integrated circuit device, combination of devices (e.g., a “chip set”), function block (e.g., an “IP core” which may be integrated into another integrated circuit device), etc., may be used in multiple different HDD designs. Thus, it is desirable for HDD components to be designed to accommodate a wide variety of operational specifications.
One common component in HDD designs is the preamplifier, which generally amplifies the signal from the read/write head(s) to a level usable by other HDD components (e.g., read channel components). The strength of the magnetic fields stored on magnetic storage media may vary widely. For example, as the density of data on a magnetic storage medium increases, the strength of the magnetic fields generally decrease, in order to minimize interference. Thus, the strength of the signal produced by the read/write head may also vary considerably depending on the size and/or capacity (and thus the areal density) of the magnetic storage medium. For example, the amplitude of data signals provided to a preamplifier in a HDD presently range from about 3 mV to about 30 mV. Because of the high variation in input signal, it is desirable for reusable preamplifiers and/or preamplifier components to be able to set the gain to an appropriate level such that the output signal is relatively constant, despite drive to drive variations in the strength of the input signal.
Automatic gain control (AGC) is typically performed at system startup (e.g., after an HDD is turned on and the disks have been “spun up” to a desired rotational velocity) to determine the appropriate gain level. FIG. 1 shows an exemplary input signal 100 that may be used to perform AGC. Input signal 100 includes signal bursts 101-107, separated by noise periods 111-116. In many HDD systems, the amplitude of noise in the system may be as much as ⅓rd of the amplitude of the signal. Furthermore, signal bursts may comprise as little as 5% of the signal time. For example, while FIG. 1 is not drawn to scale, signal bursts 101-107 may each have a duration 130 of 4 μs, while the period from the start of one signal burst (e.g., signal burst 101) to the start of the next signal burst (e.g., signal burst 102) may be 80 μs.
It is desirable to minimize the amount of time required for AGC. In many systems, AGC is performed during a predetermined detection window. For example, in FIG. 1 detection window 120 has a duration of 500 μs. One known method for detecting the optimal gain setting is to perform a binary search by setting the gain to a first gain level for at least one signal burst and comparing the amplified signal to a desired or threshold level. However, in many cases no additional gating or timing signal is available to synchronize with the burst signals. Therefore each comparison window (e.g., comparison windows 121-123) may need to be long enough to cover at least two bursts in order to ensure that the window includes at least one complete burst. Thus, AGC detection window 120 only has enough time for three comparison windows 121-123. As a result, a binary search can only select from eight (23) possible gain levels.
In many cases, eight possible gain levels are insufficient to encompass the range of gain levels that may be used in modern magnetic storage systems. Therefore, it is desirable to provide automatic gain control in systems adapted for input signals with bursting data and/or widely varying input amplitudes and/or in systems with a relatively large number of possible gain levels, without increasing the duration of the AGC detection window.